package com.gopay.webtest.handler.entrustPay;

import java.util.List;

import org.springframework.stereotype.Repository;

import com.gopay.webtest.util.BaseSign;
import com.gopay.webtest.util.ReflectUtil;

/**
 * @ClassName: EntrustPayHandler
 * @Description: 封装委托代收加签参数
 * @author lx
 * @date 2016年12月21日 下午3:10:03
 */
@Repository("entrustPaySignHandler")
public class EntrustPaySignHandler extends BaseSign {

    @Override
    public String execute(Object obj, List<String> signFields) throws Exception {
        System.out.println("委托代收加密参数封装");
        
        StringBuffer sb = new StringBuffer(512);
        for (String field : signFields) {
            String value = ReflectUtil.getFieldValue(obj, field);
            if (value == null) {
                value = "";
            }
            if ("verficationCode".equals(field)) {
                sb.append("VerficationCode");
            } else {
                sb.append(field);
            }
            sb.append("=[").append(value + "]");
        }
        
        return sb.toString();
    }

}
